<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="es" lang="es">
<head>
<title>Go4.es</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<meta name="author" content="" />
<meta name="description" content="Genrador de URLs cortas con extensiones" />
<meta name="keywords" content="short url uri corta" />
<link href="estilo.css" rel="STYLESHEET" media="screen" type="text/css" />
<link rel="shortcut icon" href="favicon.ico" />
</head>
<body>
<p><img class="logo" src="go4es2.png" width="625" height="221"></p>
<div id="centro" class="largo">
<p>
<h1 id="about">Acerca de go4.es</h1>
<p>Go4.es es un generador de url cortas que permite la incluion de extensiones, de esta manera puedes enlazar una imagen con una url corta.<br>
Go4.es esta basado en SLUGER, un generador de url cortas escrito por <a href="http://www.psicobyte.com">Psicobyte</a>  para la <a href="http://osl.ugr.es/2009/10/07/slugr-sistema-de-urls-cortos-para-la-universidad-de-granada/">OSL</a>.</p>
<p>Gracias a que estaba distribuido bajo una licencia libre <a href="http://www.codeko.com">Codeko</a> ha podido modificarlo para darle nuevas funcionalidades. Si tu tambien quieres modificarlo puedes disponer de los fuentes en <a href="https://forja.rediris.es/plugins/scmsvn/viewcvs.php/sluger/?root=osl-ugr">La Forja</a>.</p>

<p>Ahora mismo en <a href="http://www.codeko.com">Codeko</a> seguimos trabajando sobre esta version, que es una rama distinta al que se halla en <a href="https://forja.rediris.es/plugins/scmsvn/viewcvs.php/sluger/?root=osl-ugr">La Forja</a>, así que si lo deseas puedes solicitarnos los fuentes a <a href="mailto:go4es@codeko.com">go4es@codeko.com</a></p>

<h1 id="uso">Crear mi propia utilidad basada en go4.es</h1>
<p>Sientete libre de crear cualquier utilidad o de usar go4.es para todo lo que necesites.</p>
<p>Si quieres crear tu propia utilidad simplemente debe saber como hacer que Go4.es cree una urls corta. <br>
Para ello una llamada a la URL <b><code>http://go4.es/?modo=new&url=TU_URL</code></b> creará la URL corta.</p>
<p>Lógicamente esto te devolverá un montón de HTML que no quieres. Para que Go4.es te devuelva tu url en el formato que quieres puedes añadir el parámetro "format" a la url.<br/>
Actualmente Go4.es te ofrece tres formatos de respuesta "text", "xml" y "json".
</p>
<p>Así si llamas a la url <b><code>http://go4.es/?modo=new&format=text&url=TU_URL</code></b> Go4.es devolverá una cadena de texto con la url acortada. Por ejemplo para la
url <b><code>http://go4.es/?modo=new&format=text&url=http://codeko.com</code></b> Go4.es devolverá una cadena de texto con <b><code>http://go4.es/000y</code></b>.<br/>
Si hubiese algún error devolverá la cadena <b><code>ERROR: Descripción del error</code></b>.</p>

<p>Si llamas a la url <b><code>http://go4.es/?modo=new&format=xml&url=TU_URL</code></b> Go4.es devolverá un xml con los datos de tu url acortada. Por ejemplo para la
url <b><code>http://go4.es/?modo=new&format=xml&url=http://codeko.com</code></b> Go4.es devolverá una cadena de texto con:<br/> 
<b><pre><code>
&lt;?xml version="1.0" encoding="UTF-8"?&gt;
&lt;request&gt;
	&lt;url&gt;http://go4.es/000ylt;/url&gt;
	&lt;target&gt;http://codeko.comlt;/target&gt;
	&lt;error&gt;Descripción del error si lo hubiera, si no se omite esta etiqueta.&lt;/error&gt;
&lt;/request&gt;
</code></pre></b></p>

<p>Si llamas a la url <b><code>http://go4.es/?modo=new&format=json&url=TU_URL</code></b> Go4.es devolverá una cadena json con los datos de tu url acortada. Por ejemplo para la
url <b><code>http://go4.es/?modo=new&format=json&url=http://codeko.com</code></b> Go4.es devolverá:<br/> 
<b><pre><code>
{
"url":"Url corta generada o null si hay error",
"target": "Url a la que apunta la url corta generada",
"error": "Si hay un error aquí se mostrará un texto descriptivo de este, si no se omite este atributo"
}
</code></pre></b></p>

<p>Si quieres acortar tus urls con ajax probablemente te de un error de cross-domain (no se permiten hacer llamadas ajax a un dominio diferente al que se encuentra el script). 
Para conseguir que todo funcione puedes usar la técnica denominada <a href="http://en.wikipedia.org/wiki/JSON#JSONP" title="Información de JSONP en la wikipedia">JSONP</a>. Para ello Go4.es
admite, cuando solicitas una url acortada en formato "json", un parámetro "callback" cuyo valor debe ser el nombre de la función que se llamará pasándole como parámetro el 
objeto con los datos de la petición. Así si, siguiendo el ejemplo anterior, llamas a la url <b><code>http://go4.es/?modo=new&format=json&callback=miFuncion&url=http://codeko.com</code></b>
Go4.es devolverá:<br/>
<b><code>miFuncion({"url":"http://go4.es/000y","target":"http://codeko.com","error":"Descripción del error. Si no hay error se omite este atributo."});</code></b>
</p>
<p>NOTA: Con anterioridad a estos cambios se usaba el parámetro "api=1" y "api=2" para recuperar los datos en texto y json respectivamente. 
Estas forma de solicitar las urls cortas sigue funcionando pero no se recomienda su uso.</p>
<h1>Utilidades</h1>
<p>Una de las ventajas de distribuir bajo una licencia libre tu código, es que todo el mundo puede colaborar haciendolo mejor de manera que toda la comunidad se beneficie de ello, las personas que han colaborado con Go4.es son las siguientes:</p>
<p>Gracias a :</p>
<p><a href='http://enlavin.com'>Enlavin.com</a> por programar el bookmarklet <a href="javascript:(function(){var%20d=document,w=window,enc=encodeURIComponent,e=w.getSelection,k=d.getSelection,x=d.selection,s=(e?e():(k)?k():(x?x.createRange().text:0)),s2=((s.toString()=='')?s:('%22'+enc(s)+'%22')),f='http://go4.es/',l=d.location,p='?submit=Crear&modo=new&url='+enc(l.href)%20,u=f+p;try{if(!/^(.*\.)?tumblrzzz[^.]*$/.test(l.host))throw(0);tstbklt();}catch(z){a%20=function(){if(!w.open(u))l.href=u;};if(/Firefox/.test(navigator.userAgent))setTimeout(a,0);else%20a();}void(0)})()">Go4.es</a></p>
<p>A <a href="http://nauj27.com/">Nauj27</a> por crear el <a href="/favicon.ico">favicon</a> y desarrollar la intregración con <a href="https://mozillalabs.com/ubiquity/">Ubiquity</a> que puedes encontrar aqui:<a href="http://gist.github.com/233775">http://gist.github.com/233775</a></p>
<p>A <a href="http://draxus.org/">Draxus</a> por su idea de los gofres para el logo.</p>
<p>A <a href="http://andaluciapeople.com/blog/acortando-urls-con-go4es">andaluciapeople.com</a> por colaborar en la mejora de nuestra API</a>.
</div>
<div class="navegayuda">

<p><a href=".">Inicio</a> |  <a href="http://www.codeko.com">Codeko</a></p> <p> Bookmarklet <a href="javascript:(function(){var%20d=document,w=window,enc=encodeURIComponent,e=w.getSelection,k=d.getSelection,x=d.selection,s=(e?e():(k)?k():(x?x.createRange().text:0)),s2=((s.toString()=='')?s:('%22'+enc(s)+'%22')),f='http://go4.es/',l=d.location,p='?submit=Crear&modo=new&url='+enc(l.href)%20,u=f+p;try{if(!/^(.*\.)?tumblrzzz[^.]*$/.test(l.host))throw(0);tstbklt();}catch(z){a%20=function(){if(!w.open(u))l.href=u;};if(/Firefox/.test(navigator.userAgent))setTimeout(a,0);else%20a();}void(0)})()">Go4.es</a> | <a href="http://datos.go4.es">Descargar BD de Go4.es</a></p>
</div>


</div>
<script type="text/javascript">
var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
</script>
<script type="text/javascript">
try {
var pageTracker = _gat._getTracker("UA-11582037-1");
pageTracker._trackPageview();
} catch(err) {}</script>
</body>
</html>
